Various congestion control mechanisms are used to prevent network congestion. Network congestion may occur when the network is subjected to more traffic than the network is designed to handle. For example, processing large amounts of data may compromise the quality of service (“QoS”) of the network. In packet-switched networks, packets move in and out of node buffers and queues as the packets traverse the network. During periods of excessive traffic, hundreds, thousands or even millions of packets may arrive at a node from one or more sources, which may affect the ability of the node to process new incoming packets. Typical effects may include queuing delay, packet loss, the blocking of new connections and/or termination of existing services.
Congestion control techniques include preventing multiple sources from simultaneously sending data to a node. For example, a node may be able to detect that congestion is about to occur on the node, and may attempt to slow down the multiple sources sending data to the node before the queues of the node become congested. While, this approach may temporarily delay the congestion on the node, it does not avoid the congestion. Other mechanisms of congestion control include blocking all traffic that is in excess of the network's capacity and dropping packets from overloaded queues. However, this may cause the sender to retransmit the packets, which may contribute to keeping the network congested by increasing traffic on the network.
Some networks use admission control to deal with congestion on the network. Admission controls limit the number of connections on a node by accepting or rejecting service requests. Nevertheless, admission control is limited, given that it may be difficult for the admission control algorithm to predict future levels of resource utilization at the time the services are admitted.
Therefore, in view of the different congestion control techniques described above, it is still desirable to have a technique for managing network congestion that addresses the shortcomings of known solutions.